include_rules = [
  "+components/power_scheduler",
  "+components/ukm/test_ukm_recorder.h",
  "+components/viz/client",
  "+components/viz/common",
  "+gpu/GLES2",
  "+gpu/command_buffer/client/context_support.h",
  "+gpu/command_buffer/client/gles2_interface.h",
  "+gpu/command_buffer/client/gles2_interface_stub.h", # for tests
  "+gpu/command_buffer/client/gpu_memory_buffer_manager.h",
  "+gpu/command_buffer/client/raster_implementation_gles.h",
  "+gpu/command_buffer/client/raster_interface.h",
  "+gpu/command_buffer/client/shared_image_interface.h",
  "+gpu/command_buffer/common/capabilities.h",
  "+gpu/command_buffer/common/discardable_handle.h",
  "+gpu/command_buffer/common/gl2_types.h",
  "+gpu/command_buffer/common/gpu_memory_allocation.h",
  "+gpu/command_buffer/common/gpu_memory_buffer_support.h",
  "+gpu/command_buffer/common/mailbox.h",
  "+gpu/command_buffer/common/mailbox_holder.h",
  "+gpu/command_buffer/common/shared_image_trace_utils.h",
  "+gpu/command_buffer/common/shared_image_usage.h",
  "+gpu/command_buffer/common/sync_token.h",
  "+gpu/command_buffer/common/texture_in_use_response.h",
  "+gpu/config/gpu_feature_info.h",
  "+gpu/config/gpu_finch_features.h",
  "+gpu/config/gpu_info.h",
  "+gpu/vulkan",
  "+media",
  "+mojo/public/cpp/system/buffer.h",
  "+mojo/public/cpp/system/platform_handle.h",
  "+skia/ext",
  "+services/metrics/public/cpp",
  "+services/tracing/public/cpp",
  "+third_party/khronos/GLES2/gl2.h",
  "+third_party/khronos/GLES2/gl2ext.h",
  "+third_party/libyuv",
  "+third_party/skia/include",
  "+third_party/skia/include/private/chromium/SkChromeRemoteGlyphCache.h",
  "+third_party/skia/modules/skottie/include",
  "+third_party/skia/modules/skresources/include",
  "+third_party/skia/src/effects/imagefilters/SkRuntimeImageFilter.h",
  "+third_party/perfetto/protos/perfetto/trace/track_event",
  "+ui/base",
  "+ui/events/types",
  "+ui/latency",
  "+ui/gfx",
  "+ui/gl",

  # Do not use mojo bindings in cc/. This library should be agnostic about how
  # to communicate with viz.
  "-mojo/public/cpp/bindings",
]

specific_include_rules = {
  "in_process_context_provider\.cc": [
    "+gpu/command_buffer/client",
    "+gpu/command_buffer/common",
    "+gpu/command_buffer/service",
    "+gpu/ipc",
    "+gpu/skia_bindings",
  ],
  "in_process_context_provider\.h": [
    "+gpu/command_buffer/common",
    "+gpu/ipc",
  ],
  ".*_(unit|pixel|perf)test.*\.cc": [
    "+components/viz/service/display",
    "+components/viz/test",
    "+gpu/command_buffer/common/command_buffer_id.h",
    "+gpu/command_buffer/common/constants.h",
  ],
  "oop_pixeltest\.cc" : [
    "+gpu/command_buffer/client",
    "+gpu/command_buffer/common",
    "+gpu/config",
    "+gpu/ipc",
    "+gpu/skia_bindings",
  ],
  "transfer_cache_unittest\.cc" : [
    "+gpu/command_buffer/client",
    "+gpu/command_buffer/common",
    "+gpu/command_buffer/service",
    "+gpu/config",
    "+gpu/ipc",
  ],
}
